Agile Methods
Εκφράζεται από τέσσερις απλές δηλώσεις που αποτελούν προτιμήσεις και όχι εναλλακτικές, καθώς ενθαρρύνουν την εστίαση σε ορισμένα θέματα και όχι την αντικατάσταση και εξαφάνιση άλλων περιοχών ενδιαφέροντος.

Άνθρωποι και διαδράσεις πάνω από διαδικασίες και εργαλεία :
Ο σημαντικότερος παράγοντας κατά την ανάπτυξη λογισμικού είναι τα εμπλεκόμενα πρόσωπα (προγραμματιστές, ελεγκτές, διευθυντές έργων, υπεύθυνοι μοντελοποίησης, πελάτες) και πως αυτά συνεργάζονται και διαδρούν μεταξύ τους. Αν η συνεργασία αυτή δεν είναι επιτυχής οι διαδικασίες και τα εργαλεία δεν πρόκειται να αποτελέσουν σημαντική βοήθεια.

Λογισμικό που λειτουργεί πάνω από κατανοητή και ολοκληρωμένη γραπτή τεκμηρίωση :
Δεν θα πρέπει να ξεχνάμε το πρωταρχικό μας στόχο που είναι η παραγωγή λογισμικού. Το ίδιο το λογισμικό είναι πιο κατανοητό σε σχέση με μακροσκελή έγγραφα και διαγράμματα τεκμηρίωσης που περιγράφουν πως δουλεύει ένα πρόγραμμα. Η ολοκληρωμένη τεκμηρίωση είναι σημαντική για να εξηγεί ποιος είναι ο στόχος του προγράμματος και πως μπορούμε να το χειριστούμε, αλλά ο ρόλος της θα είναι πάντα δευτερεύων και συμπληρωματικός, αφού το ίδιο το πρόγραμμα είναι το βασικό προϊόν που πρέπει να παραχθεί.

Συνεργασία με τον πελάτη πάνω από διαπραγματεύσεις με συμβόλαια :
Η στενή συνεργασία με τον πελάτη είναι απαραίτητη. Ο πελάτης είναι ο μόνος που μπορεί να σου πει τι χρειάζεται. Η συνεργασία αυτή είναι συνήθως δύσκολη αφού ο πελάτης δεν μπορεί να καθορίσει τι ακριβώς χρειάζεται και αλλάζει συχνά γνώμη σχετικά με τις απαιτήσεις του προγράμματος. Αυτή η διαδικασία είναι όμως αναπόφευκτο τμήμα της δουλειάς. Το να υπάρχει ένα συμβόλαιο με τον πελάτη που θα καθορίζει τις ευθύνες και τα δικαιώματα του καθενός και θα περιγράφει την μεταξύ τους σχέση είναι σημαντικό. Ωστόσο το συμβόλαιο δεν αποτελεί υποκατάστατο της επικοινωνίας.

Ανταπόκριση σε αιτήματα αλλαγών πάνω από την αυστηρή εφαρμογή ενός πλάνου:
Η αλλαγή είναι αναπόσπαστο τμήμα της δουλειάς. Κατά τη διάρκεια ανάπτυξης του προγράμματος, αλλάζουν οι απαιτήσεις των πελατών, το επιχειρηματικό περιβάλλον ακόμα και η ίδια η τεχνολογία. Αυτές οι αλλαγές δεν αφήνουν ανεπηρέαστη την ανάπτυξη λογισμικού. Για αυτό το λόγο θα πρέπει η ανάπτυξη λογισμικού να αντανακλά την ανάγκη για αλλαγή. Αυτό δεν σημαίνει ότι απορρίπτουμε την ιδέα του προγραμματισμού. Θα ήταν μάλιστα πολύ ανησυχητικό για το ίδιο το έργο αν δεν υπήρχε κάποιο πλάνο χρονοπρογραμματισμού. Θα πρέπει λοιπόν τα πλάνα που φτιάχνουμε να είναι περισσότερο ευέλικτα και λιγότερο αυστηρά και να λαμβάνουν υπόψη τους την περίπτωση αλλαγών που μπορεί να προκαλέσει ανακατατάξεις.


REFERENCES
Agile Alliance, (2001), Manifesto for Agile Software Development. http://www.agilemanifesto.org

Agile Software Development Quality Assurance, I. G. Stamelos and P. D. Sfetsos, IDEA GROUP PUBLISHING, Febr. 2007, ISBN:  978-1-59904-216-9.

Ambler, S. (2002). Agile Modelling: Effective Practices for Extreme Programming and Unified Process, (1 ed.) Wiley, p. 224.

Abrahamsson, P., Salo, O., Ronkainen, J. and Warsta, J. (2002), Agile Software Development Methods: Review and Analysis, VVT Publications, No. 478, pp. 7-94.

Beck, K. (1999). Embracing change with extreme programming. Computer    13(10):70-77.

Beck, K. (2000). Extreme Programming Explained: Embrace Change. Reading, Massachusetts: Addison-Wesley.

Boehm, B. (2002). Get Ready for Agile Methods, with care. Computer, 35, 1. Pp. 64-69.

Boehm, B. and Turner, R. (2004),  Balancing Agility and Discipline: A guide for the perplexed, Addison-Wesley, USA, first edition, Appendix A, pp. 165-194.

Cockburn, A. (2001). Agile software development. In: Cockburn A, Highsmith J (eds) The Agile Software Development Series. Addison-Wesley Longman, Reading, Massachusetts

Cockburn, A. (2004). Crystal Clear: A Human-Powered Methodology for Small Teams. Addison Wealey Professional, p. 336.

Cockburn, A. (2002). Agle Software Development. Addison-Wesley, 2002.

Coad, P., Lefebvre, E., and De Luca, J. (1999). Java Modeling in color with UML: Entreprise Component and Process Prentice Hall PTR, p. 221.

Fowler, M. (2006). The New Methodology [on-line],  http://www.martinfowler.com/articles/newMethodology.html

Highsmith, J. (2002). Agle Software Development Ecosystems, Addison Wesley
.

Schwaber, K. (2001). Agile Software Development with SCRUM, (1 ed.) Prentice Hall, p. 150.

Stapleton, J., and MacDonald, D. (1997). DSDM: The Method in Practice. Addison Wesley, p. 192.


Το Μανιφέστο για την ευέλικτη ανάπτυξη λογισμικού
 Επιστροφή
 Eπιστροφή